# Insert methods _PSS (3 P-states), _PSD and _CST into CPUs 0-3
#
into method label _PSS parent_label CPU0 remove_entry;
into processor label CPU0 insert
begin
Method (_PSS, 0, NotSerialized)\n
{\n
    Return (Package (0x03)\n
    {\n
        Package (0x06)\n
        {\n
            Zero, \n
            Zero, \n
            0x10, \n
            0x10, \n
            0xFFVV, // FF = FID, VV = VID\n
            Zero    // P-state 0\n
        }, \n
        Package (0x06)\n
        {\n
            Zero, \n
            Zero, \n
            0x10, \n
            0x10, \n
            0xFFVV, // FF = FID, VV = VID\n
            One     // P-state 1\n
        }, \n
        Package (0x06)\n
        {\n
            Zero, \n
            Zero, \n
            0x10, \n
            0x10, \n
            0xFFVV, // FF = FID, VV = VID\n
            0x02    // P-state 2\n
        }\n
    })\n
}
end;
into method label _PSD parent_label CPU0 remove_entry;
into processor label CPU0 insert
begin
Method (_PSD, 0, NotSerialized)\n
{\n
    Return (Package (0x05)\n
    {\n
        0x05, \n
        Zero, \n
        Zero, \n
        0xFC, \n
        0x04\n
    })\n
}
end;
into method label _CST parent_label CPU0 remove_entry;
into processor label CPU0 insert
begin
Method (_CST, 0, NotSerialized)\n
{\n
    Return (Package (0x02)\n
    {\n
        One, \n
        Package (0x04)\n
        {\n
            ResourceTemplate ()\n
            {\n
                Register (FFixedHW, \n
                    0x01,               // Bit Width\n
                    0x02,               // Bit Offset\n
                    0x0000000000000000, // Address\n
                    0x01,               // Access Size\n
                    )\n
            }, \n
            One, \n
            0x9D, \n
            0x03E8\n
        }\n
    })\n
}
end;
into method label _PSS parent_label CPU1 remove_entry;
into processor label CPU1 insert
begin
Method (_PSS, 0, NotSerialized)\n
{\n
    Return (^^CPU0._PSS ())\n
}
end;
into method label _PSD parent_label CPU1 remove_entry;
into processor label CPU1 insert
begin
Method (_PSD, 0, NotSerialized)\n
{\n
    Return (^^CPU0._PSD ())\n
}
end;
into method label _CST parent_label CPU1 remove_entry;
into processor label CPU1 insert
begin
Method (_CST, 0, NotSerialized)\n
{\n
    Return (Package (0x04)\n
    {\n
        0x03, \n
        Package (0x04)\n
        {\n
            ResourceTemplate ()\n
            {\n
                Register (FFixedHW, \n
                    0x01,               // Bit Width\n
                    0x02,               // Bit Offset\n
                    0x0000000000000000, // Address\n
                    ,)\n
            }, \n
            One, \n
            Zero, \n
            0x03E8\n
        }, \n
        Package (0x04)\n
        {\n
            ResourceTemplate ()\n
            {\n
                Register (FFixedHW, \n
                    0x08,               // Bit Width\n
                    0x00,               // Bit Offset\n
                    0x0000000000000414, // Address\n
                    ,)\n
            }, \n
            0x02, \n
            One, \n
            0x01F4\n
        }, \n
        Package (0x04)\n
        {\n
            ResourceTemplate ()\n
            {\n
                Register (FFixedHW, \n
                    0x08,               // Bit Width\n
                    0x00,               // Bit Offset\n
                    0x0000000000000415, // Address\n
                    ,)\n
            }, \n
            0x03, \n
            0x55, \n
            0xFA\n
        }\n
    })\n
}
end;
into method label _PSS parent_label CPU2 remove_entry;
into processor label CPU2 insert
begin
Method (_PSS, 0, NotSerialized)\n
{\n
    Return (^^CPU0._PSS ())\n
}
end;
into method label _PSD parent_label CPU2 remove_entry;
into processor label CPU2 insert
begin
Method (_PSD, 0, NotSerialized)\n
{\n
    Return (^^CPU0._PSD ())\n
}
end;
into method label _CST parent_label CPU2 remove_entry;
into processor label CPU2 insert
begin
Method (_CST, 0, NotSerialized)\n
{\n
    Return (^^CPU1._CST ())\n
}
end;
into method label _PSS parent_label CPU3 remove_entry;
into processor label CPU3 insert
begin
Method (_PSS, 0, NotSerialized)\n
{\n
    Return (^^CPU0._PSS ())\n
}
end;
into method label _PSD parent_label CPU3 remove_entry;
into processor label CPU3 insert
begin
Method (_PSD, 0, NotSerialized)\n
{\n
    Return (^^CPU0._PSD ())\n
}
end;
into method label _CST parent_label CPU3 remove_entry;
into processor label CPU3 insert
begin
Method (_CST, 0, NotSerialized)\n
{\n
    Return (^^CPU1._CST ())\n
}
end
